= gitlab_ui_form_for @application_setting, url: general_admin_application_settings_path(anchor: 'js-account-settings'), html: { class: 'fieldset-form', id: 'account-settings' } do |f|
  = form_errors(@application_setting)

  %fieldset
    .form-group
      = f.gitlab_ui_checkbox_component :gravatar_enabled, _('Gravatar enabled')

    .form-group
      = f.label :default_projects_limit, _('Default projects limit'), class: 'label-bold'
      = f.number_field :default_projects_limit, class: 'form-control gl-form-input', title: _('Maximum number of projects.'), data: { toggle: 'tooltip', container: 'body' }
    .form-group
      = f.label :max_attachment_size, _('Maximum attachment size (MiB)'), class: 'label-bold'
      = f.number_field :max_attachment_size, class: 'form-control gl-form-input', title: _('Maximum size of individual attachments in comments.'), data: { toggle: 'tooltip', container: 'body' }

    = render 'admin/application_settings/repository_size_limit_setting_registration_features_cta', form: f
    = render_if_exists 'admin/application_settings/repository_size_limit_setting', form: f

    .form-group
      = f.label :receive_max_input_size, _('Maximum push size (MiB)'), class: 'label-light'
      = f.number_field :receive_max_input_size, class: 'form-control gl-form-input', title: _('Maximum size limit for a single commit.'), data: { toggle: 'tooltip', container: 'body', qa_selector: 'receive_max_input_size_field' }
    .form-group
      = f.label :max_export_size, _('Maximum export size (MiB)'), class: 'label-light'
      = f.number_field :max_export_size, class: 'form-control gl-form-input', title: _('Maximum size of export files.'), data: { toggle: 'tooltip', container: 'body' }
      %span.form-text.text-muted= _('Set to 0 for no size limit.')
    .form-group
      = f.label :max_import_size, _('Maximum import size (MiB)'), class: 'label-light'
      = f.number_field :max_import_size, class: 'form-control gl-form-input', title: _('Maximum size of import files.'), data: { toggle: 'tooltip', container: 'body' }
      %span.form-text.text-muted= _('Only effective when remote storage is enabled. Set to 0 for no size limit.')
    .form-group
      = f.label :max_import_remote_file_size, s_('Import|Maximum import remote file size (MB)'), class: 'label-light'
      = f.number_field :max_import_remote_file_size, class: 'form-control gl-form-input', title: s_('Import|Maximum remote file size for imports from external object storages. For example, AWS S3.'), data: { toggle: 'tooltip', container: 'body' }
      %span.form-text.text-muted= _('Set to 0 for no size limit.')
    .form-group
      = f.label :bulk_import_max_download_file_size, s_('BulkImport|Direct transfer maximum download file size (MB)'), class: 'label-light'
      = f.number_field :bulk_import_max_download_file_size, class: 'form-control gl-form-input', title: s_('BulkImport|Maximum download file size when importing from source GitLab instances by direct transfer.'), data: { toggle: 'tooltip', container: 'body' }
    .form-group
      = f.label :max_decompressed_archive_size, s_('Import|Maximum decompressed size (MiB)'), class: 'label-light'
      = f.number_field :max_decompressed_archive_size, class: 'form-control gl-form-input', title: s_('Import|Maximum size of decompressed archive.'), data: { toggle: 'tooltip', container: 'body' }
      %span.form-text.text-muted= _('Set to 0 for no size limit.')
    .form-group
      = f.label :session_expire_delay, _('Session duration (minutes)'), class: 'label-light'
      = f.number_field :session_expire_delay, class: 'form-control gl-form-input', title: _('Maximum duration of a session.'), data: { toggle: 'tooltip', container: 'body' }
      %span.form-text.text-muted#session_expire_delay_help_block= _('Restart GitLab to apply changes.')
    .form-group
      = f.label :remember_me_enabled, _('Remember me'), class: 'label-light'
      - remember_me_help_link = help_page_path('user/profile/index.md', anchor: 'stay-signed-in-for-two-weeks')
      - remember_me_help_link_start = '<a href="%{url}" target="_blank" rel="noopener noreferrer">'.html_safe % { url: remember_me_help_link }
      = f.gitlab_ui_checkbox_component :remember_me_enabled, _('Allow users to extend their session'), help_text: _("Users can select 'Remember me' on sign-in to keep their session active beyond the session duration. %{link_start}Learn more.%{link_end}").html_safe % { link_start: remember_me_help_link_start, link_end: '</a>'.html_safe }

    = render_if_exists 'admin/application_settings/git_two_factor_session_expiry', form: f
    = render_if_exists 'admin/application_settings/personal_access_token_expiration_policy', form: f
    = render_if_exists 'admin/application_settings/ssh_key_expiration_policy', form: f

    .form-group
      = f.label :user_oauth_applications, _('User OAuth applications'), class: 'label-bold'
      = f.gitlab_ui_checkbox_component :user_oauth_applications, _('Allow users to register any application to use GitLab as an OAuth provider')
    .form-group
      = f.label :user_default_external, _('New users set to external'), class: 'label-bold'
      = f.gitlab_ui_checkbox_component :user_default_external, _('Newly-registered users are external by default')
      .gl-mt-3
        = _('Internal users')
      = f.text_field :user_default_internal_regex, placeholder: _('Regex pattern'), class: 'form-control gl-form-input gl-mt-2'
      .help-block
        = _('Specify an email address regex pattern to identify default internal users.')
        = link_to _('Learn more.'), help_page_path('administration/external_users', anchor: 'set-a-new-user-to-external'), target: '_blank', rel: 'noopener noreferrer'
    - unless Gitlab.com?
      .form-group
        = f.label :deactivate_dormant_users, _('Dormant users'), class: 'label-bold'
        - dormant_users_help_link = help_page_path('administration/moderate_users', anchor: 'automatically-deactivate-dormant-users')
        - dormant_users_help_link_start = '<a href="%{url}" target="_blank" rel="noopener noreferrer">'.html_safe % { url: dormant_users_help_link }
        = f.gitlab_ui_checkbox_component :deactivate_dormant_users, _('Deactivate dormant users after a period of inactivity'), help_text: _('Users can reactivate their account by signing in. %{link_start}Learn more.%{link_end}').html_safe % { link_start: dormant_users_help_link_start, link_end: '</a>'.html_safe }
        .form-group
          = f.label :deactivate_dormant_users_period, _('Days of inactivity before deactivation'), class: 'label-light'
          = f.number_field :deactivate_dormant_users_period, class: 'form-control gl-form-input', min: 90, required: true
          #application_setting_deactivate_dormant_users_period_error.form-text.gl-text-red-500.gl-display-none
            = _('Please enter a value of 90 days or more')
          .form-text.text-muted
            = _('Must be 90 days or more.')

    .form-group
      = f.label :personal_access_token_prefix, _('Personal Access Token prefix'), class: 'label-light'
      = f.text_field :personal_access_token_prefix, placeholder: _('Maximum 20 characters'), class: 'form-control gl-form-input'
    .form-group
      = f.label :user_show_add_ssh_key_message, _('Prompt users to upload SSH keys'), class: 'label-bold'
      = f.gitlab_ui_checkbox_component :user_show_add_ssh_key_message, _("Inform users without uploaded SSH keys that they can't push over SSH until one is added")

    = render 'admin/application_settings/invitation_flow_enforcement', form: f
    = render 'admin/application_settings/user_restrictions', form: f
    = render_if_exists 'admin/application_settings/availability_on_namespace_setting', form: f
    -# This is added for Jihu edition which should not be deleted without notifying Jihu
    = render_if_exists 'admin/application_settings/password_expiration_setting', form: f
  = f.submit _('Save changes'), pajamas_button: true, data: { qa_selector: 'save_changes_button' }
